The present invention relates to a data processing apparatus and method as well as storage medium, and more particularly, to an apparatus which enables multiplexing of additive information to an image subjected to printing, and a data processing apparatus and method as well as storage medium for reading the printed image and extracting the additive information.
Conventionally increasing studies have been conducted for multiplexing additive information to image data, which is different from the additive information, in such a manner that the additive information keeps a visually low profile.
Recently, a technique known as the digital watermarking is about to be standardized. According to this technique, additive information, e.g., an owner of an image, authorization/non-authorization of the use of the image and so on, is multiplexed to image data such as photographs or drawings in such a manner that the additive information is visually difficult to identify, and the image data is distributed through networks such as the Internet.
In other fields of application of the technique, as image output devices such as copying machines, printers and the like have become more high-quality oriented, there is a technique available for embedding additive information to an image in order to specify an output device and machine number from the outputted image printed on paper, for the purpose of preventing unauthorized forgery of bills, stamps, securities and so on.
For instance, Japanese Patent Application Laid-Open (KOKAI) No. 7-123244 proposes a data multiplexing technique of embedding additive information to a color difference component having a visually low sensitivity and a high-frequency area of a saturation component.
However, with the use of the above-described methods, it is extremely difficult to multiplex a large volume of information to a printout in such a manner that a change in the printed image is visually unrecognizable.
As means to solve the above problem, the assignee of the present invention has proposed the following method. Taking into consideration the characteristics of printer engines such as thermal-dissolving-type transferring printers, laser printers or the like, a texture generated by an error diffusion method, which is one of the pseudo-tonality processing, is utilized, and a combination of quantization values that is never produced in the normal pseudo-tonality processing is artificially produced to realize code embedding. Since this method only causes microscopically small changes in the shape of the texture, the visual image quality is not deteriorated. In addition, with the use of a method which changes a quantization threshold value of the error diffusion method, visual density values of areal tonality can be maintained, thus realizing extremely easy multiplexing of different types of signals.
FIGS. 11A and 11B are block diagrams showing a construction of an image processing system according to an invention proposed by the assignee of the present invention. In FIG. 11A, reference numerals 1100 and 1101 denote input terminals. Multi-tone image data is inputted to the input terminal 1100, and additive information to be embedded to the image data is inputted to the input terminal 1101. The additive information is different from the image data inputted to the input terminal 1100. For instance, copy right information of an image inputted to the input terminal 1100, or other information are inputted. An additive information multiplexing unit 1102 embeds additive information to image data in such a manner that the additive information is visually difficult to identify. The additive information multiplexing unit 1102 controls quantization of inputted multi-tone image data in addition to the additive information multiplexing. A printer 1103 prints out data generated by the additive information multiplexing unit by a printer engine. Assume that the printer used herein is an inkjet printer, laser printer or the like which realizes tonality expression by pseudo tonality processing.
The printout is subjected to scanning by a scanner 1104 in FIG. 11B to read information on the printout. An additive information separation unit 1105 separates the embedded additive information and outputs it to an output terminal 1106.
However, the foregoing technique has the following problems.
The above-described technique enables multiplexing a larger volume of information to image data compared to the conventional method, without deteriorating quality of the image data. However, a reading rate is not always 100% when decoding the multiplexed information. Causes of reading errors include the nature of an image which multiplexes arbitrary information, printer""s ink discharge precision, reading precision of a scanner used in decoding image data, quality of a print medium, the type of ink used, durability of toner, smudges on printed surface, and so forth. Because of these reasons, it is extremely difficult to realize a multiplexing technique which ensures 100% decoding.
The present invention has been proposed in view of the above problems, and has as its object to provide a data processing apparatus, method, and storage medium which enable extraction of additive information from a printed image with high precision in a case where additive information is multiplexed to the image and printed.
In order to solve the above-described problem and achieve the object, for instance, the data processing apparatus according to the present invention has the following configuration.
More specifically, the present invention provides a data processing apparatus for multiplexing additive information to image data and printing the image data by predetermined printing means, comprising: header generation means for generating header block information including at least information indicative of a size of the additive information and information for error correction; and block generation means for dividing the additive information into blocks each having a predetermined size, and generating block information including error correction code information by adding error correction code information to each block, wherein the information generated by said header generation means and block generation means is multiplexed to the image data and printed.